package com.motus.pm.vo;

import java.sql.Timestamp;
import java.util.HashSet;
import java.util.Set;

import org.apache.struts2.json.annotations.JSON;
import org.springframework.stereotype.Component;

/**
 * PmProjectInfo entity. @author MyEclipse Persistence Tools
 */

@Component
public class PmProjectInfo implements java.io.Serializable {

	// Fields

	private String pid;
	private String pname;
	private Timestamp proPlanStartTime;
	private Timestamp proPlanEndTime;
	private Timestamp proRealStartTime;
	private Timestamp proRealEndTime;
	private String proVoc;
	private Integer proPoint;
	private Integer proState;
	private String remark;
	private Set pmProjectPhases = new HashSet(0);

	// Constructors

	/** default constructor */
	public PmProjectInfo() {
	}
	public PmProjectInfo(String pid,String pname,int proPoint ){
		this.pid = pid;
		this.pname =  pname;
		this.proPoint = proPoint;
	}
	/** minimal constructor */
	public PmProjectInfo(String pid) {
		this.pid = pid;
	}

	/** full constructor */
	public PmProjectInfo(String pid, String pname, Timestamp proPlanStartTime,
			Timestamp proPlanEndTime, Timestamp proRealStartTime,
			Timestamp proRealEndTime, String proVoc, Integer proPoint,
			Integer proState, String remark, Set pmProjectPhases) {
		super();
		this.pid = pid;
		this.pname = pname;
		this.proPlanStartTime = proPlanStartTime;
		this.proPlanEndTime = proPlanEndTime;
		this.proRealStartTime = proRealStartTime;
		this.proRealEndTime = proRealEndTime;
		this.proVoc = proVoc;
		this.proPoint = proPoint;
		this.proState = proState;
		this.remark = remark;
		this.pmProjectPhases = pmProjectPhases;
	}

	// Property accessors

	public String getPid() {
		return this.pid;
	}

	public void setPid(String pid) {
		this.pid = pid;
	}

	public String getPname() {
		return this.pname;
	}

	public void setPname(String pname) {
		this.pname = pname;
	}

	public Timestamp getProPlanStartTime() {
		return this.proPlanStartTime;
	}

	public void setProPlanStartTime(Timestamp proPlanStartTime) {
		this.proPlanStartTime = proPlanStartTime;
	}

	public Timestamp getProPlanEndTime() {
		return this.proPlanEndTime;
	}

	public void setProPlanEndTime(Timestamp proPlanEndTime) {
		this.proPlanEndTime = proPlanEndTime;
	}

	public Timestamp getProRealStartTime() {
		return this.proRealStartTime;
	}

	public void setProRealStartTime(Timestamp proRealStartTime) {
		this.proRealStartTime = proRealStartTime;
	}

	public Timestamp getProRealEndTime() {
		return this.proRealEndTime;
	}

	public void setProRealEndTime(Timestamp proRealEndTime) {
		this.proRealEndTime = proRealEndTime;
	}

	public String getProVoc() {
		return proVoc;
	}

	public void setProVoc(String proVoc) {
		this.proVoc = proVoc;
	}

	public Integer getProPoint() {
		return proPoint;
	}

	public void setProPoint(Integer proPoint) {
		this.proPoint = proPoint;
	}

	public Integer getProState() {
		return this.proState;
	}

	public void setProState(Integer proState) {
		this.proState = proState;
	}

	public String getRemark() {
		return this.remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

	@JSON(serialize=false)
	public Set getPmProjectPhases() {
		return this.pmProjectPhases;
	}

	public void setPmProjectPhases(Set pmProjectPhases) {
		this.pmProjectPhases = pmProjectPhases;
	}

}